Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


Commit a8505eade9f3b0ded493a6035eb5ee433538c6ee


Parents : 6a00d82
Author : Mark Qvist <bc7291552be7a58f361522990465165c>
Date : 2026-05-10T14:12:51+02:00

Added outbound processing trigger for pn node announces

Changes

2 files changed, 13 insertions(+), 1 deletions(-)


Diff

diff --git a/LXMF/Handlers.py b/LXMF/Handlers.py
index afcf708..6239b18 100644
--- a/LXMF/Handlers.py
+++ b/LXMF/Handlers.py
@@ -41,6 +41,18 @@ class LXMFPropagationAnnounceHandler:
def received_announce(self, destination_hash, announced_identity, app_data, announce_packet_hash, is_path_response):
try:
if type(app_data) == bytes:
+ if destination_hash == self.lxmrouter.get_outbound_propagation_node():
+ if pn_announce_data_is_valid(app_data):
+ for lxmessage in self.lxmrouter.pending_outbound:
+ if lxmessage.method == LXMessage.PROPAGATED:
+ lxmessage.next_delivery_attempt = time.time()
+
+ def outbound_trigger():
+ while self.lxmrouter.outbound_processing_lock.locked(): time.sleep(0.1)
+ self.lxmrouter.process_outbound()
+
+ threading.Thread(target=outbound_trigger, daemon=True).start()
+
if self.lxmrouter.propagation_node:
if pn_announce_data_is_valid(app_data):
data = msgpack.unpackb(app_data)

diff --git a/LXMF/_version.py b/LXMF/_version.py
index f5b7730..a25765c 100644
--- a/LXMF/_version.py
+++ b/LXMF/_version.py
@@ -1 +1 @@
-__version__ = "0.9.7"
+__version__ = "0.9.8"


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────